package com.briup.oagg.dataset.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.briup.oagg.dataset.bean.basic.Reservoir;
import com.briup.oagg.dataset.web.vm.ReservoirAddVM;
import com.briup.oagg.dataset.web.vm.ReservoirUpdateVM;

import java.util.List;

/**
 * 油气藏信息业务逻辑接口
 *
 * @author briup
 */
public interface IReservoirService extends IService<Reservoir> {
    /**
     * 新增油气藏信息
     * @param vm 新增参数
     */
    void addReservoir(ReservoirAddVM vm);

    /**
     * 根据油编号修改油气藏描述信息
     * @param vm 修改参数
     */
    void updateReservoir(ReservoirUpdateVM vm);

    /**
     * 根据编号删除油气藏
     * @param reservoirId 油气藏编号
     */
    void deleteById(String reservoirId);

    /**
     * 分页多条件查询油气藏信息
     * @param trapId  圈闭编号
     * @param pageNum 当前页码
     * @param pageSize 每页大小
     * @return 油气藏分页数据
     */
    Page<Reservoir> findByPage(String trapId, Integer pageNum, Integer pageSize);

    /**
     * 根据油气藏编号查询油气藏信息
     * @param reservoirId 油气藏编号
     * @return 油气藏信息
     */
    Reservoir findById(String reservoirId);
}
